package fantasma;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.Timer;

public class Presa extends EstadoFantasma implements ActionListener {
	
	private static int TIEMPO_PRESA;
	private Timer timer;

	public Presa() {
		this.timer = new Timer(Presa.TIEMPO_PRESA, this);
	}

	public static void setTiempoPresa(int tiempoPresa) {
		Presa.TIEMPO_PRESA = tiempoPresa;
	}	
		
	@Override
	public void iniciar() {
		int agresividadFantasmaCazador = this.getEstadoFantasmaAnterior().getAgresividad();
		int nuevaAgresividad = agresividadFantasmaCazador / 2;
		this.setAgresividad(nuevaAgresividad);
		this.timer.start();
	}
	
	@Override
	public void convertirEnPresa() {
		this.timer.restart();
	}

	@Override
	public void matar() {
		this.getFantasma().setEstadoFantasma(this.getEstadoFantasmaSiguiente());
		this.timer.stop();
	}

	@Override
	public void molestar() {
		System.out.println("Soy Presa y no me molesto");
	}

	@Override
	public void mover(Posicion posicionActual) {
		posicionActual.setPosX((posicionActual.getPosX()+1)); //luego iria inteligencia para moverse posta
		System.out.println("Soy Presa y me escapo");
	}
	
	public String toString(){
		return "Presa";
	}

	@Override
	public void actionPerformed(ActionEvent arg0) {
		this.timer.stop();	
		this.getFantasma().setEstadoFantasma(this.getEstadoFantasmaAnterior());
		System.out.println("Era "+this+", pero ahora me converti en "+this.getEstadoFantasmaAnterior());//TODO: Borrar luego
	}

}
